Block error compensating apparatus of image frame and method thereof

ABSTRACT

An apparatus and method are provided for compensating a block error in an image frame. This may include a video codec decoder for decoding an inputted image frame, and outputting a decoded image frame. An error concealment block may detect an error-generated block in the decoded image frame and compensate the detected error block through a median filter, and output the compensated image frame.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of (and claims the benefit ofpriority under 35 USC 120 to) U.S. application Ser. No. 13/759,123,filed Feb. 5, 2013, which is a continuation of U.S. application Ser. No.11/682,402, filed Mar. 6, 2007, now U.S. Pat. No. 8,428,141, which is acontinuation of U.S. application Ser. No. 10/815,669, filed Apr. 2,2004, now U.S. Pat. No. 7,221,710, which claims the benefit of a foreignpriority application filed in Korea as Serial No. 2003-0022018 on Apr.8, 2003. The disclosures of the prior applications are considered partof (and are incorporated by reference in) the disclosure of thisapplication.

FIELD

Embodiments of the present invention may relate to multimediacommunication, and more particularly, to an apparatus for compensating ablock error generated from an image frame and a method thereof.

BACKGROUND

Mobile communication includes communication systems primarily using avoice signal. However, as techniques for mobile communication are beingdeveloped and demands therefore are being increased, mobilecommunication is being developed as a multimedia communication includingnot only voice, but also data, as well as moving images. In multimediacommunication, an amount of data to be processed may be large, and abandwidth of an allocated channel or a data transmission speed may belimited. Techniques for transmitting/receiving a large amount of datawith limited data transmission speed by compressing, for example, movingpicture expert group (MPEG) techniques, have been developed.

MPEG techniques for compressing multimedia signals may reduce a dataamount of the MPEG frame consecutively changed as a function of time,and transmit the multimedia signal by using an intra-coded frame(I-Frame) decoded only by information of an image frame, apredictive-coded frame (P-Frame) including only motion vector valuesfrom the I-Frame, etc. Herein, even if the I-Frame and the P-Frame havefew differences by the MPEG method or other application methods, theymay have a transmission ratio of about 1:15 per second.

When a block error is generated at the I-Frame, a receiving side mayreceive the I-Frame again, so as to compensate the block error. When ablock error is generated at the P-Frame, the receiving side may performa motion estimation process and a motion compensation process for theprevious frame and the next frame of the P-Frame, so as to compensatethe block error. An apparatus for compensating the block error of animage frame according to an exemplary arrangement will be explained withreference to FIG. 1.

FIG. 1 is a block diagram showing the block error compensating apparatusof an image frame according to an example arrangement.

As shown, the block error compensating apparatus of an image frame mayinclude a video codec decoder 10 for decoding an inputted image frame,compensating an error-generated image frame among the decoded imageframe, and thereby outputting. The apparatus may include a memory 12 forstoring an image frame processed in the video codec decoder 10. Theapparatus may include a window interface 14 for converting the imageframe inputted from the video codec decoder 10 into a correspondingformat for displaying and thereby outputting. The apparatus may includea display window 16 for displaying the image frame inputted from thewindow interface 14.

A block error compensating method of an image frame according to anexample arrangement will be explained with reference to FIG. 2.

FIG. 2 is a flow chart showing the block error compensating method of animage frame according to an example arrangement.

As shown, a method for compensating a block error of an image frame mayinclude detecting an error-generated block in a decoded image frame(S20). The method may include judging whether a frame including thedetected block is a P-Frame (S22). The method may include compensatingthe generated block error based on the previous frame and the next framewhen the frame including the detected block is the P-Frame. The methodmay include displaying the frame where the bock error has beencompensated (S26), which may be repeated. In determining whether a frameincluding the detected block is a P-Frame (S22), when a frame includingthe detected block is an I-Frame, the I-Frame may be received again(S23) and the block error-generated image frame may be compensated bythe re-received I-Frame.

A method for compensating a block error of an image frame according toan exemplary arrangement will be explained in more detail.

The video codec decoder 10 may receive an image frame from atransmitting side thus to decode, then store the decoded image frame inthe memory, and then detect an error-generated block the decoded imageframe (S20). Herein, the image frame may be composed of blocks havingpredetermined regions.

When an error-generated block is not detected in the decoded imageframe, the video codec decoder 10 may output the image frame to thewindow interface 14. When an error-generated block is detected in thedecoded image frame, the video codec decoder 10 may judge whether animage frame including the error-generated block is a P-Frame (S22).

When the image frame including the error-generated block is not theP-Frame but an I-Frame, the video codec decoder 10 may receive theI-Frame again (S23) and the block error-generated image frame may becompensated by the re-received I-Frame thereby to be outputted to thewindow interface 14.

On the other hand, when the image frame including the error-generatedblock is the P-Frame, the video codec decoder 10 may perform a motionestimation process and a motion compensation process for the previousframe and the next frame thereby to output the image frame in which theblock error has been compensated to the window interface 14 (S24).

The window interface 14 may convert the inputted image frame into acorresponding format to be suitable for the display window 16, andoutput the converted image frame. The display window 16 may display theinputted converted image frame (S26).

As described above, in the block error compensating apparatus of animage frame, a block error-generated frame may be received again, or amotion estimation process and a motion compensation process for theprevious frame and the next frame may be performed, thereby compensatingthe block error-generated frame.

However, in the block error compensating apparatus of an image frame,since a block error-generated frame may have to be received again, orthe motion estimation process and the motion compensation process forthe previous frame and the next frame may have to be performed, anadditional memory for operating a large amount of data may be necessaryand data may not be processed in real-time.

SUMMARY

Therefore, an embodiment(s) of the present invention may provide a blockerror compensating apparatus of an image frame capable of enhancingreliability by re-confirming an error generation for an error-generatedblock and a method thereof.

Another embodiment(s) of the present invention may provide a block errorcompensating apparatus of an image frame capable of compensating anerror without need for additional memory by compensating a blockerror-generated image frame through a median filter and a methodthereof.

Still another embodiment(s) of the present invention may provide a blockerror compensating apparatus of an image frame capable of compensatingan error in real time by compensating a block error-generated imageframe through a median filter and a method thereof.

To achieve these and other advantages and in accordance with the purposeof embodiments of the present invention, as embodied and broadlydescribed herein, there is provided a block error compensating apparatusof an image frame including a video codec decoder for decoding aninputted image frame and outputting a decoded image frame. The blockerror compensating apparatus may include an error concealment block fordetecting an error-generated block in the decoded image frame,compensating the detected error block through a median filter, andoutputting a compensated image frame.

To achieve these and other advantages and in accordance with the purposeof embodiments of the present invention, as embodied and broadlydescribed herein, there is provided a method for compensating a blockerror of an image frame including decoding an inputted image frame andthereby outputting a decoded image frame. The method for compensating ablock error may include detecting a block error of the decoded imageframe and compensating the detected block error through a median filter,and outputting a compensated image frame.

The foregoing and other objects, features, aspects and advantages of thepresent invention will become more apparent from the following detaileddescription of the present invention when read in conjunction with theaccompanying drawings, all forming a part of the disclosure of thepresent invention.

Additional advantages, objects, and features of the invention may be setforth in part in the description which follows and in part will becomeapparent to those having ordinary skill in the art upon examination ofthe following or may be learned from practice of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are included to provide a furtherunderstanding of the invention, are incorporated in and constitute apart of this specification, illustrate embodiments of the invention andtogether with the description serve to explain the principles of theinvention.

Embodiments of the present invention will be described in detail withreference to the following drawings in which like reference numeralsrefer to like elements and wherein:

FIG. 1 is a block diagram showing a block error compensating apparatusof an image frame according to an example arrangement;

FIG. 2 is a flow chart showing a block error compensating method of animage frame according to an example arrangement;

FIG. 3 is a block diagram showing a block error compensating apparatusof an image frame according to an example embodiment of the presentinvention; and

FIG. 4 is a flow chart showing a block error compensating method of animage frame according to an example embodiment of the present invention.

DETAILED DESCRIPTION

Reference will now be made in detail to exemplary embodiments of thepresent invention, examples of which are illustrated in the accompanyingdrawings.

Hereinafter, a block error compensating apparatus of an image frame thatmay compensate an error in real time and/or without an additional memoryby compensating a block error-generated image frame through a medianfilter, and a method thereof will be explained with reference to theattached drawings.

FIG. 3 is a block diagram showing the block error compensating apparatusof an image frame according to an example embodiment of the presentinvention.

As shown, the block error compensating apparatus of an image frame orvideo according to an embodiment of the present invention may include avideo codec decoder 30 for decoding an inputted image frame andoutputting a decoded image frame. The apparatus may include a memory 32for storing an image frame processed in the video codec decoder 30. Theapparatus may include an error concealment block 33 for detecting ablock error or video block error in the frame inputted from the videocodec decoder 30, compensating the detected block error through a medianfilter, and outputting a compensated frame. The apparatus may include awindow interface 34 for converting the frame inputted from the errorconcealment block 33 into a format suitable for a display device andoutputting a converted frame. The apparatus may include a display window36 for displaying the frame inputted from the window interface 34.

The error concealment block 33 may include an error detection block 331for detecting an error-generated block in the inputted image frame. Theerror concealment block 33 may include an error refinement block 332 foraveraging pixel values of one or more blocks adjacent (preceding and/orsubsequent) to the detected error block to obtain a first average valueor a confirmation average value, obtaining an absolute value for adifference between the average value and a pixel value of the detectederror block, and comparing the absolute value with a predeterminedvalue. The error concealment block 33 may include an error correctionfilter 333 for averaging pixel values of one or more blocks adjacent tothe confirmed error block through a median filter to obtain a secondaverage value or compensation average value, and outputting thecompensation average value as a pixel value of the confirmed error blockwhen the absolute value is greater than the predetermined value. Theerror concealment block 33 may include a frame generation block 334 forrestoring a normal or error-free image frame based on the outputtedpixel value, and outputting a restored image frame.

The block error compensating method of an image frame according to anembodiment(s) of the present invention will be explained in more detailwith reference to FIG. 4.

FIG. 4 is a flow chart showing the block error compensating method of animage frame according to an exemplary embodiment(s) of the presentinvention.

As shown, the block error compensating method of an image frame mayinclude detecting an error-generated block in the decoded image frame(S40). The method may include averaging pixel values of blocks adjacentto the detected error block to obtain a first average value orconfirmation average value, obtaining an absolute value for a differencebetween the confirmation average value and a pixel value of the detectederror block, and comparing the absolute value with a predetermined value(S42). The method may include compensating the detected error blockthrough a median filter when the absolute value is greater than thepredetermined value (S44). The method may include restoring an imageframe including the block based on the compensated block (S46).

The block error compensating method of an image frame according to anembodiment(s) of the present invention will be explained in more detail.

First, the video codec decoder 30 may receive an image frame from atransmitting side. The video coder decoder 30 may decode the receivedimage frame. A decoded image frame may be stored in the memory 32. Thedecoded image frame may be outputted to the error detection block 331.Herein, one image frame or video frame may be composed of video blocksor pixel blocks having predetermined regions.

The error detection block 331 may detect an error-generated block in theimage frame inputted from the video codec decoder 30 (S40). The detectedblock may be outputted to the error refinement block 332.

The error refinement block 332 may average pixel values of one or moreblocks adjacent (preceding and/or subsequent) to or contiguous with thedetected error block to obtain a first average value or confirmationaverage value. An absolute value may be obtained for a differencebetween the confirmation average value and a pixel value of the detectederror block. The absolute value may be compared with the predeterminedvalue. According to the comparison result (S42), it may be determinedwhether or not an error is generated in the detected block.

An average value for pixel values of one or more blocks adjacent to theerror block may be obtained by the following formula.P_(S)(x,y)=[P(x−1,y−1)+P(x,y−1)+P(x+1,y−1)]/3+[P(x−1,y)+P(x+1,y)]/2+[P(x−1,y+1)+P(x,y+1)+P(x+1,y+1)]/3  (Formula1)

In Formula 1, P(x,y) may denote a pixel value of the detected errorblock, and P_(S) (x,y) may denote an average value of pixel values ofone or more blocks adjacent to the detected error block. Formula 1 maybe modified to include one or more successive blocks.

The error refinement block 332 may operate an average value of pixelvalues of one or more blocks adjacent to the detected error block. Theerror refinement block 332 may obtain an absolute value for a differencebetween P(x,y) and P_(S) (x,y). The error refinement block 332 maycompare the absolute value with the predetermined value.abs[P(x,y)−P _(S)(x,y)]

α  (Formula 2)

When the absolute value is less than or equal to the predeterminedvalue, the error refinement block 332 may determine the detected errorblock to be a normal or error-free block. The error refinement block 332may output a block having no error to the frame generation block 334.When the absolute value is greater than or equal to the predeterminedvalue, the error refinement block 332 may determine the detected errorblock to be a block in which a final or confirmed error is generated,i.e., a confirmed error block or error block. The error refinement block332 may output an error block to the error correction filter (e.g.,median filter) 334.

The error correction filter 333 may average pixel values of one or moreblocks adjacent (preceding or subsequent) to or contiguous with theerror block through the median filter to obtain an average value orcompensation average value, thereby compensating the pixel value of theerror block by the compensation average value (S44). The averagingprocess through the median filter may be performed according to thefollowing formula.P_(gen)(x,y)=[P(x,y−1)+P(x,y−3)+P(x+1,y−2)+P(x−1,y−2)+P(x,y+1)+P(x,y+3)+P(x+1,y+2)]/7  (Formula3)

In Formula 3, P_(gen)(x,y) may denote an average value operated throughthe median filter, and P(x, y) may denote a pixel value of the errorblock. Formula 3 may be modified to include one or more successiveblocks.

Next, the frame generation block 334 may restore an image frameincluding the compensated block on the basis of the block compensatedfrom the error correction filter 333, thereby outputting the restoredimage frame to the window interface 34 (S46).

The window interface 34 may convert the inputted image frame into acorresponding format suitable for the display window 36, and therebyoutput the converted image frame. The display window 36 may display theinputted image frame. A liquid crystal display (LCD), for example, maybe used as the display window 36.

As aforementioned, according to the block error compensating apparatusof an image frame and the method thereof according to embodiments of thepresent invention, whether an error generation exists or not for theerror-generated block may be re-confirmed thereby to enhancereliability.

Also, according to the block error compensating apparatus of an imageframe and the method thereof according to embodiments of the presentinvention, the block error-generated image frame may be compensatedthrough the median filter thereby to be able to compensate a block errorwithout an additional memory.

In addition, according to the block error compensating apparatus of animage frame and the method thereof according to embodiments of thepresent invention, the block error generated image frame may becompensated through the median filter thereby to be able to compensate ablock error in real time.

As the present invention may be embodied in several forms withoutdeparting from the spirit or essential characteristics thereof, itshould also be understood that the above-described embodiments are notlimited by any of the details of the foregoing description, unlessotherwise specified, but rather should be construed broadly within itsspirit and scope as defined in the appended claims, and therefore allchanges and modifications that fall within the metes and bounds of theclaims, or equivalence of such metes and bounds are therefore intendedto be embraced by the appended claims.

The foregoing embodiments and advantages are merely exemplary and arenot to be construed as limiting the present invention. The presentteaching can be readily applied to other types of apparatuses. Thedescription of the present invention is intended to be illustrative, andnot to limit the scope of the claims. Many alternatives, modifications,and variations will be apparent to those skilled in the art. In theclaims, means-plus-function clauses are intended to cover the structuresdescribed herein as performing the recited function and not onlystructural equivalents but also equivalent structures.

What is claimed is:
 1. A method comprising: decoding video framescomprised of an intra-coded frame and a predictive-coded frame, at leastone video frame having at least one target pixel block to be filtered,said decoding comprising performing motion compensation on saidpredictive-coded frame; filtering said target pixel block by using atleast one pixel value of said target pixel block and multiple pixelvalues of one other pixel block adjacent to said target pixel block andstoring said filtered video frame in a decoded frame buffer, whereinsaid filtering comprises: obtaining an absolute value of a result fromcalculations using a difference between said at least one pixel value ofsaid target pixel block and at least one of said multiple pixel valuesof said one other pixel block, obtaining, based on a comparison of saidabsolute value with a particular value, a compensation value calculatedby using said at least one pixel value of said target pixel block andsaid multiple pixel values of said one other pixel block, and applyingsaid compensation value to compensate for said target pixel block. 2.The method of claim 1, wherein said target pixel block and said oneother pixel block are separated by a pixel block boundary.
 3. The methodof claim 2, wherein said filtering step is additionally performed withrespect to another pixel block, said another pixel block being differentfrom said one other pixel block and adjacent to said target pixel block.